package com.smedi.ismedi.progress.core.domain.repository;

import com.smedi.ismedi.progress.api.dto.request.VersionManageCreateRequest;
import com.smedi.ismedi.progress.core.application.command.ProgressViewCommand;
import com.smedi.ismedi.web.starter.common.ResponseData;
import org.springframework.http.ResponseEntity;
import org.springframework.web.multipart.MultipartFile;

/**
 * @author hexu@goldbeacon.cn
 * @version 1.0
 * @remark ...
 * @date 2022/10/11 15:13
 */
public interface ProjectVersionRepository {
    /**
     * 导入mpp project文件，创建项目版本信息
     * @param projectFile project文件
     * @param versionManageCreateRequest 请求参数
     * @return  版本表主键
     */
    void versionImport(MultipartFile projectFile, VersionManageCreateRequest versionManageCreateRequest);

    /**
     * 下载mpp project模板文件
     *
     */
    ResponseEntity<byte[]> downloadProjectTemplateFile();

    String cancelVersion(ProgressViewCommand progressViewCommand);
}
